1. Field of the Invention
The present invention relates to techniques for averting network congestion by use of feedback control in conjunction with the ABR service.
2. Description of the Related Art
At the ATM Forum and in the ITU-T, a service system called the ABR (available bit rate) service is currently proposed. The proposed service envisages applying ATM (asynchronous transfer mode) data switching techniques to high-speed data communication networks such as a LAN (local area network) and a WAN (wide area network). The ABR service, when implemented, will feed network congestion information from an exchange back to a source end system so as to avoid network congestion. More specifically, the ABR service is a network service that allows an exchange to monitor the use status of network resources to change dynamically and correspondingly to change the transmission rate of a source end system between a peak cell rate (PCR) and a minimum cell rate (MCR), whereby the network is efficiently operated and network congestion or any loss of cells is averted. The ABR service is described below in more detail.
&lt;ABR Service&gt;
In a communications system utilizing the ABR service, resource management (RM) cells are used to notify end systems of network resource information. A source end system outputs an RM cell every time a predetermined number of user data cells have been transmitted. Each RM cell moves over the ATM network to reach a destination end system and loops back therefrom to the source end system.
The ATM exchange on the ATM network writes information on resources inside the exchange (bandwidth information, congestion information, etc.) to RM cells that pass therethrough. In turn, the RM cells notify the source end system of the information from the network. Upon receipt of the RM cells containing bandwidth information, congestion information and other network-related information, the source end system recalculates its own allowed cell rate (ACR) to perform communications at a rate lower than the ACR.
At the start of its transmission, the source end system submits a peak cell rate (PCR; the highest transmission rate) and a minimum cell rate (MCR; the lowest transmission rate) to the network for negotiation therewith. The source end system cannot transmit ATM cells (simply called cells hereafter) at a rate exceeding the PCR, decided upon as a result of the negotiation. For its part, the ATM network guarantees data transmission at rates above the MCR determined through the negotiation. That is, the allowed cell rate (ACR) of the source end system varies between the MCR and the PCR (MCR.ltoreq.ACR.ltoreq.PCR).
Such operations allow the ATM network to avert congestion and to recover quickly from congestion. For their part, source end systems are allowed to transmit cells at a high transmission rate when network resources are available.
&lt;Operations of ABR End Systems&gt;
The operations of a transmission terminal (ABR source end system) and a reception terminal (ABR destination end system) for communications based on the ABR service are subject to standardization at the ATM Forum. Some of the operations are outlined below.
ABR Source End System
A source end system transmits cells at a rate lower than the allowed cell rate (ACR) at any given point in time, as shown in FIG. 1, in the forward direction flow. In this case, the source end system outputs one RM cell every time a predetermined number of user data cells (Nrm-1) have been transmitted. Upon receipt of an RM cell, a destination end system increases the ACR by a predetermined value if a CI (congestion indicator) bit in the RM cell is found to be 0 (not congested); the system decreases the ACR, by a predetermined value if the CI bit is set to 1 (congested). Concurrently with such operations, the source end system compares an explicit rate (ER) in the RM cell with the previously recalculated ACR, and regards whichever is the lower as the new ACR. At this time, the ACR must be within the range of: MCR.ltoreq.ACR.ltoreq.PCR
ABR Destination End System
The destination end system terminates user data cells transmitted from the source end system and loops the received RM cells back to the source end system, as depicted in FIG. 1, in the backward direction flow. In the user data cell received immediately before any RM cell by the destination end system, an explicit forward congestion indication (EFCI) bit may be found to be 1, indicating congestion. In this case, the destination end system sets the CI bit to 1 in the RM cell in question before the RM cell is looped back to the source end system.
&lt;Operations of the ATM Exchange&gt;
The workings of the ATM network implementing the ABR service, i.e., those of ATM exchanges, fall into one of two principal categories: EFCI mode and ER mode.
EFCI Mode
During congestion, an ATM exchange sets the EFCI bit to each of user data cells reaching that exchange before the cells move past the exchange.
ER Mode
In view of internal resource availability and congestion status, an ATM exchange calculates the explicit rate (ER) at which to allow a source end system to transmit data. The calculated value is written to an RM cell moving past the ATM exchange in the forward direction (from source to destination) or in the backward direction (from destination to source). In this case, the ATM exchange compares the ER value in the RM cell with the ER value calculated by the exchange and writes whichever is the smaller to the RM cell.
Apart from the RM cells sent from the source end system, an ATM exchange or a destination end system may also generate RM cells for transmission to a source end system. In such a case, the ATM exchange or the destination end system sets the CI bit in the generated RM cell or writes to the RM cell an ER value calculated by the exchange or end system.
Forming part of the operations of the ATM exchange for implementing the ABR service, functions called ABR VS/VD (virtual source/virtual destination) have been established besides the dual mode workings described above. To implement the ABR VS/VD functions requires that, as shown in FIG. 2, VD functions to loop back RM cells received from upstream be installed on the upstream side of each ATM exchange (i.e., destination end system side) and that VS functions to relay or newly output RM cells downstream be installed on the downstream side of the ATM exchange (i.e., source end system side).
That is, the VS/VD functions allow ATM exchanges to generate, loop back and terminate RM cells internally, regarding any given ABR connection. This means that the ABR connection is no longer limited to a single control loop ranging from the source end system to an ATM exchange to the destination end system, to the ATM exchange to the source end system; the ABR connection may now be segmented into a plurality of control loops as indicated in FIG. 2. In the above setup, the VD functions implemented in any ATM exchange virtually simulate the functions of a destination end system, and the VS functions also implemented in the ATM exchange virtually simulate those of a source end system.
When the ABR service segments each ABR connection into a plurality of control loops, the control loops are placed under parallel feedback control for improved feedback response. This allows the ATM network to avert congestion and to recover more quickly from congestion. End systems, for their part, are allowed to transmit cells at a higher transmission rate whenever network resources are available.
Specifics of the VS/VD functions that need to be implemented are as follows:
(1) ABR source/destination operations stipulated by ATM Forum Traffic Management (TM) 4.0 (mandatory functions)
(a) Generation and termination of RM cells (function to be included in the VS) PA1 (b) Calculation of the allowed cell rate (ACR) based on information set in backward RM cells received (function to be included in the VS) PA1 (c) Transmission of user data cells at the ACR (function to be included in the VS) (d) Loop-back of RM cells plus scheduling of out-rate RM cells (function to be included in the VD). An out-rate RM is an RM cell in which, with the free bandwidth of loop-back side channels set to 0 under ABR control, a cell loss priority (CLP) bit is set to 1 (to be described later with reference to FIG. 9) before the cell is transmitted. The out-rate RM cell (CLP=1) is more likely to be discarded in the network than RM cells in which the CLP bit is set to 0. PA1 (e) Operation to set the CI bit to 1 in an RM cell to be looped back upon receipt of a user data cell in which the EFCI bit is set to 1 (function to be included in the VD) PA1 (f) Generation of a backward explicit congestion indication (BECN) RM cell (function to be included in the VD) PA1 (a) Transfer of the MCR value in an RM cell coming from downstream (destination end system side) and received by the VS, on to the upstream VD (source end system side) PA1 (b) Transfer of the MCR value in an RM cell coming from upstream and received by the VD, on to the downstream VS PA1 (a) Transfer of the ER value in an RM cell terminated by the VS inside an exchange, on to the upstream VD within the same exchange PA1 (b) Setting of ABR parameters for the segment to be supported PA1 (c) Function to calculate the ER value at a point of congestion within a switch
(2) Transfer of the minimum cell rate (MCR) value (mandatory functions)
(3) Functions for control between the VS and the VD within the same exchange (implementation specific)
The operations of the functions listed above are subject to standardization at the ATM Forum. Specific methods of control and concrete ways to implement systems and equipment are excluded from the objects to be standardized. For example, methods for detecting congestion status in ATM exchanges and algorithms for calculating the explicit rate (ER) are not subject to standardization.
Of the more specific VS/VD functions outlined above, those in the category (3), "Functions for control between the VS and the VD within the same exchange" have yet to be matched with effective conventional techniques.